package com.newly.common.base.annotation;

import java.lang.annotation.*;

/**
 * @program: newly-parent
 * @remark: 鉴权
 * @author: guan
 * @create: 2022-01-08 16:36
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface NewlyAuth {
    /**
     * 当前租户必须包含该角色
     */
    String[] incRole() default "";

    /**
     * 当前租户必须不包含该角色
     */
    String[] excRole() default "";

    /**
     * 当前租户必须包含该权限
     */
    String[] incPerm() default "";

    /**
     * 当前租户必须不包含该权限
     */
    String[] excPerm() default "";

    /**
     * 是否必须开发者，true必须开发者，false无需开发者
     * 默认false
     */
    boolean dev() default false;
}
